package com.probiz.estore.core.util;

import javax.servlet.ServletContext;

import org.springframework.context.ApplicationContext;
/**
 * 具体业务环境的集中管理
 * @author hover
 *
 */
public interface AppContextLoader {
	/**
	 * 加载具体业务环境
	 */
	public void reloadContext();
	/**
	 * 环境清理
	 */
	public void cleanup();

	/**
	 * 加载系统配置SystemConfig
	 * 系统配置不是直接以Map的方式放在ServletContext中，放的是ConfigUtil；后者对系统配置进行包装；令到对系统配置的访问非常方便，举例：appConfig.rememberMeEnabled；并对系统配置自动进行缓存
	 * 
	 */
	public void reloadConfig();

	/**
	 * 加载语言
	 * @Deprecated
	 */
	public void reloadLanguage();
	/**
	 * 加载菜单库
	 */
	public void reloadMenuRepository();

	public void setServletContext(ServletContext servletContext);
	public void setSpringContext(ApplicationContext springContext);
}